/***********************************************************************
 * Module:  EssaiOrCourse.java
 * Author:  bbc
 * Purpose: Defines the Class EssaiOrCourse
 ***********************************************************************/

package receiver;

import java.util.*;

/** Une course contient la liste des voitures qui y participent, et fais partie d'un evenement */
public class EssaiOrCourse {
   private String nomEssaiOrCourse_;
   private java.util.Date heureDebut_;
   private java.util.Date heureFin_;
   private TypeEssaiOrCourse typeEssaiOrCourse_;
   private boolean departAutomatique_;
   private TypeFin typeDeFin_;
   private int nbToursMax_;
   private float dureeMaxPilotage_;
   private float dureeConsecutiveMaxPilotage_;
   private String commentaire_;
   
   private java.util.List<Voiture> collectionVoiture_;
   
   
   /** @pdGenerated default getter */
   public java.util.List<Voiture> getCollectionVoiture_() {
      if (collectionVoiture_ == null)
         collectionVoiture_ = new java.util.ArrayList<Voiture>();
      return collectionVoiture_;
   }
   
   /** @pdGenerated default iterator getter */
   public java.util.Iterator getIteratorCollectionVoiture_() {
      if (collectionVoiture_ == null)
         collectionVoiture_ = new java.util.ArrayList<Voiture>();
      return collectionVoiture_.iterator();
   }
   
   /** @pdGenerated default setter
     * @param newCollectionVoiture_ */
   public void setCollectionVoiture_(java.util.List<Voiture> newCollectionVoiture_) {
      removeAllCollectionVoiture_();
      for (java.util.Iterator iter = newCollectionVoiture_.iterator(); iter.hasNext();)
         addCollectionVoiture_((Voiture)iter.next());
   }
   
   /** @pdGenerated default add
     * @param newVoiture */
   public void addCollectionVoiture_(Voiture newVoiture) {
      if (newVoiture == null)
         return;
      if (this.collectionVoiture_ == null)
         this.collectionVoiture_ = new java.util.ArrayList<Voiture>();
      if (!this.collectionVoiture_.contains(newVoiture))
         this.collectionVoiture_.add(newVoiture);
   }
   
   /** @pdGenerated default remove
     * @param oldVoiture */
   public void removeCollectionVoiture_(Voiture oldVoiture) {
      if (oldVoiture == null)
         return;
      if (this.collectionVoiture_ != null)
         if (this.collectionVoiture_.contains(oldVoiture))
            this.collectionVoiture_.remove(oldVoiture);
   }
   
   /** @pdGenerated default removeAll */
   public void removeAllCollectionVoiture_() {
      if (collectionVoiture_ != null)
         collectionVoiture_.clear();
   }
   
   public void ajouterVoiture() {
      // TODO: implement
   }
   
   public void retirerVoiture() {
      // TODO: implement
   }
   
   public void sauvegarderCourse() {
      // TODO: implement
   }
   
   public void associerTopAVoiture() {
      // TODO: implement
   }
   
   public void dessassocierTopDeVoiture() {
      // TODO: implement
   }

}